home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio / Ham Radio CD-ROM (Emerald Software) (1995).ISO / misc / utilitys / zivin.bas (.txt) < prev   
Encoding:
GW-BASIC  |  1980-01-01  |  3.9 KB  |  101 lines

  1. 10  PRINT," COMPUTER PROJECT (RF & MICRO II) BY WILLIAM L. CASTOR, JR
  2. 12  PRINT:PRINT, "via K2UYH/wa2tif":PRINT
  3. 15   PI=3.1416
  4. 20  REM PRECISION 4
  5. 30  REM ************ INPUT IMPEDANCE AND VOLTAGE CALULATION ************
  6. 40  REM OUTBYTE(26)
  7. 50  PRINT "THIS PROGRAM GIVES THE STUDENT THE ABILITY TO CALCULATE IMPEDANCE"
  8. 60  PRINT"OR VOLTAGE AT A GIVEN POINT ON A TRANSMISSION LINE."
  9. 70  PRINT"THE STUDENT MUST INPUT DISTANCE OF THE LOAD IN WAVELENGTHS"
  10. 80  PRINT"OR IN INCHES. IF THE DISTANCE IS IN INCHES, THE FREQUENCY"
  11. 90  PRINT"AND VELOCITY FACTOR MUST BE INPUTED.IN EITHER CASE THE"
  12. 100  PRINT "THE LOAD AND CHARACTERISTIC IMPEDANCE MUST BE INPUTED"
  13. 110  DG=180/PI
  14. 120  DEF FNMG(AR,AX)=SQR(AR^2+AX^2)
  15. 160  DEF FNR(MG,AG)=MG*COS(AG/DG)
  16. 170  DEF FNX(MG,AG)=MG*SIN(AG/DG)
  17. 180  PRINT:INPUT "DISTANCE IN (I)NCHES OR (W)AVELENGTHS";B$
  18. 190  IF B$ = "I" THEN GOTO 200 ELSE IF B$ = "W" THEN 270 ELSE GOTO 180
  19. 200  PRINT :INPUT "FREQUENCY IN (H)Z,(K)HZ, OR (M)HZ";A$
  20. 210  IF A$ = "H" THEN KF =1 ELSE IF A$ ="K" THEN KF = 1000 ELSE IF A$ = "M" THEN KF = 1E+06 ELSE GOTO 200
  21. 220  PRINT:INPUT "FREQUENCY ="; F :F = F*KF
  22. 230  INPUT "VELOCITY FACTOR =";VF
  23. 240  INPUT "LENGTH OF TRANSMISSION LINE FROM THE LOAD IN INCHES =";L
  24. 250  WL=1.1811E+10*VF/F:D=L/WL
  25. 260  GOTO 280
  26. 270  PRINT: INPUT "DISTANCE TO THE LOAD IN WAVELENGTHS =";D
  27. 280  PRINT : INPUT "REAL VALUE OF LOAD IMPEDANCE =";ZR
  28. 290  IF ZR =0 THEN ZR=0
  29. 300  INPUT "IMAJ VALUE OF LOAD IMPEDANCE =";ZX
  30. 310  IF ZX=0 THEN ZX=0
  31. 320  INPUT "CHARACTERISTIC IMPEDANCE VALUE = ";ZO
  32. 330  Z1=ZR/ZO:Z2=ZX/ZO:J1=TAN(2*PI*D)
  33. 340  NR=Z1:NX=Z2+J1
  34. 345  GOSUB 960
  35. 350  NM=FNMG(NR,NX):NA=FNAG(NR,NX)
  36. 360  DR=1-Z2*J1:DX=Z1*J1
  37. 370  DM=FNMG(DR,DX):DA=FNAG(DR,DX)
  38. 380  TM=ZO*NM/DM:TA=NA-DA
  39. 390  TR=FNR(TM,TA):TX=FNX(TM,TA)
  40. 400  REM OUTBYTE(26):N=0
  41. 410  IF B$ = "W" THEN GOTO 450
  42. 420  PRINT ,:PRINT  , "INPUT FREQUENCY =";F
  43. 430  PRINT , "VELOCITY FACTOR =";VF
  44. 440  PRINT , : PRINT  , "DISTANCE FROM LOAD IN INCHES ="; L
  45. 450  PRINT ,:PRINT  , "DISTANCE FROM LOAD IN WAVELENGTHS =";D
  46. 460  PRINT ,:PRINT  , "REAL VALUE OF LOAD IMPEDANCE =";ZR
  47. 470  PRINT , "IMAJ VALUE OF LOAD IMPEDANCE =";ZX
  48. 480  PRINT ,:PRINT  , "CHARACTERISTIC IMPEDANCE =";ZO
  49. 490  PRINT ,:PRINT  , "REAL VALUE OF INPUT IMPEDANCE =";TR
  50. 500  PRINT , "IMAJ VALUE OF INPUT IMPEDANCE =";TX
  51. 510  PRINT  ,:PRINT  , "MAG OF INPUT IMPEDANCE =";TM
  52. 520  PRINT , "ANG OF INPUT IMPEDANCE =";TA
  53. 540  REM PRINT:INPUT"DO YOU WANT A HARD COPY (Y/N)";N$
  54. 550  IF N$ = "Y" THEN N=2:GOTO 410
  55. 560  PRINT :INPUT "WANT TO CALCULATE VOLTAGE (Y/N) "; H$
  56. 570  REM ********************* VOLTAGE *********************************
  57. 580  IF H$ <> "Y" THEN GOTO 930
  58. 590  REM OUTBYTE(26)
  59. 600  PRINT : INPUT "MAGNITUDE SOURCE VOLTAGE = "; VM
  60. 610  INPUT "ANGLE OF SOURCE VOLTAGE = " ; VA
  61. 620  IF B$ = "I" THEN GOTO 660 
  62. 630  PRINT : INPUT "DISTANCE FROM SOURCE TO LOAD IN WAVELENGTHS =";DX
  63. 640  IF DX >= D THEN GOTO 690 ELSE PRINT "DISTANCE FROM SOURCE TO LOAD MUST BE GREATER OR EQUAL TO ";D;"WAVELENGTHS" : GOTO 630
  64. 650  GOTO 690
  65. 660  PRINT:INPUT"DISTANCE FROM SOURCE TO LOAD IN INCHES =";LL
  66. 670  IF LL >= L THEN GOTO 680 ELSEPRINT "DISTANCE FROM SOURCE TO LOAD MUST BE GREATER OR EQUAL TO";L;"INCHES":GOTO 660
  67. 680  DX = LL/WL
  68. 690  DL = D
  69. 695  GOSUB 960
  70. 700  M = FNMG(ZR,ZX) : A = FNAG(ZR,ZX)
  71. 710  V1 = M*COS(2*PI*DL): V2 = A
  72. 720  V3 = FNR(V1,V2) : V4 = FNX(V1,V2)
  73. 730  V5 = ZO*SIN(2*PI*DL) :V6 = V4 + V5
  74. 735  GOSUB 960
  75. 740  V7 = FNMG(V3,V6) : V8 = FNAG(V3,V6)
  76. 750  Q1 = M*COS(2*PI*DX) : Q2 = A
  77. 760  Q3 = FNR(Q1,Q2) : Q4 = FNX(Q1,Q2)
  78. 770  Q5 = ZO*SIN(2*PI*DX) : Q6 = Q4 + Q5
  79. 775  GOSUB 960
  80. 780  Q7 = FNMG(Q3,Q6) : Q8 = FNAG(Q3,Q6)
  81. 790  YM = (VM*V7)/Q7 : YA = VA + V8 - Q8
  82. 800  REM OUTBYTE(26):N=0
  83. 810  PRINT  , : PRINT  , "MAGNITUDE SOURCE VOLTAGE = " ; VM
  84. 820  PRINT  , "ANGLE OF SOURCE VOLTAGE = " ; VA
  85. 830  IF B$ = "W" THEN GOTO 860
  86. 840  PRINT  , : PRINT  , "DISTANCE FROM LOAD IN INCHES = " ; L
  87. 850  PRINT  , "DISTANCE FROM SOURCE TO LOAD IN INCHES =" ; LL
  88. 860  PRINT  , : PRINT  , "DISTANCE TO LOAD IN WAVELENGTHS =" ; DL
  89. 870  PRINT  , "DISTANCE SOURCE TO LOAD IN WAVELENGTHS =" ; DX
  90. 880  PRINT  , : PRINT  , "MAGNITUDE OF VOLTAGE = " ; YM
  91. 890  PRINT  , "ANGLE OF VOLTAGE = " ; YA
  92. 900  REM IF N = 2 THEN GOTO 930
  93. 910  REM PRINT:INPUT"DO YOU WISH TO MAKE A HARD COPY (Y/N)";N$
  94. 920  IF N$ = "Y" THEN N = 2: GOTO 810
  95. 930  PRINT : INPUT "DO YOU WISH TO MAKE ANOTHER CALCULATION (Y/N)";Z$
  96. 940  REM IF Z$ = "Y" THEN OUTBYTE(26):GOTO 110
  97. 950  END
  98. 960  IF AR>0 THEN GOTO 970 ELSE GOTO 980
  99. 970  DEF FNAG(AR,AX)=DG*ATN(AR/AX):RETURN
  100. 980  DEF FNAG(AR,AX)=DG*(ATN(AR/AX)+PI):RETURN
  101.